<ng-template #titleTemplate>
  <ng-template [ngTemplateOutlet]="nzTitle"></ng-template>
</ng-template>
<ng-template #extraTemplate>
  <ng-template [ngTemplateOutlet]="nzExtra"></ng-template>
</ng-template>
<div class="ant-card-head" *ngIf="nzTitle||nzExtra||tab">
  <div class="ant-card-head-wrapper">
    <div class="ant-card-head-title" *ngIf="nzTitle">
      <ng-container *ngIf="isTitleString; else titleTemplate">{{ nzTitle }}</ng-container>
    </div>
    <div class="ant-card-extra" *ngIf="nzExtra">
      <ng-container *ngIf="isExtraString; else extraTemplate">{{ nzExtra }}</ng-container>
    </div>
  </div>
  <ng-container *ngIf="tab">
    <ng-template [ngTemplateOutlet]="tab.template"></ng-template>
  </ng-container>
</div>
<div class="ant-card-cover" *ngIf="nzCover">
  <ng-template [ngTemplateOutlet]="nzCover"></ng-template>
</div>
<div class="ant-card-body" [ngStyle]="nzBodyStyle">
  <ng-container *ngIf="!nzLoading">
    <ng-content></ng-content>
  </ng-container>
  <nz-card-loading *ngIf="nzLoading"></nz-card-loading>
</div>
<ul class="ant-card-actions" *ngIf="nzActions.length">
  <li *ngFor="let action of nzActions" [style.width.%]="100/nzActions.length">
    <span><ng-template [ngTemplateOutlet]="action"></ng-template></span>
  </li>
</ul>